....      ..        .                                              s         s                                                     s    
  +^""888h. ~"888h     @88>                                           :8        :8                                                    :8    
 8X.  ?8888X  8888f    %8P                  u.    u.                 .88       .88           u.             u.    u.                 .88    
'888x  8888X  8888~     .          u      x@88k u@88c.      .u      :888ooo   :888ooo  ...ue888b          x@88k u@88c.      .u      :888ooo 
'88888 8888X   "88x:  .@88u     us888u.  ^"8888""8888"   ud8888.  -*8888888 -*8888888  888R Y888r        ^"8888""8888"   ud8888.  -*8888888 
 `8888 8888X  X88x.  ''888E` .@88 "8888"   8888  888R  :888'8888.   8888      8888     888R I888>          8888  888R  :888'8888.   8888    
   `*` 8888X '88888X   888E  9888  9888    8888  888R  d888 '88%"   8888      8888     888R I888>          8888  888R  d888 '88%"   8888    
  ~`...8888X  "88888   888E  9888  9888    8888  888R  8888.+"      8888      8888     888R I888>          8888  888R  8888.+"      8888    
   x8888888X.   `%8"   888E  9888  9888    8888  888R  8888L       .8888Lu=  .8888Lu= u8888cJ888     .     8888  888R  8888L       .8888Lu= 
  '%"*8888888h.   "    888&  9888  9888   "*88*" 8888" '8888c. .+  ^%888*    ^%888*    "*888*P"    .@8c   "*88*" 8888" '8888c. .+  ^%888*   
  ~    888888888!`     R888" "888*""888"    ""   'Y"    "88888%      'Y"       'Y"       'Y"      '%888"    ""   'Y"    "88888%      'Y"    
       X888^"""         ""    ^Y"   ^Y'                   "YP'                                      ^*                    "YP'              
       `88f                                                                                                                                 
        88                                                                                                                                  
        

FPGA Development Board

FPGA MachXO2 7000HC

This was my first FPGA board that I designed independently and it is also one of my earlier boards that I've designed in general. During my internship at Ag Leader, my coworker suggested making my own developemnt board since I had expressed how commerical FPGA development boards were out of my price range. Despite the headaches that come from a DIY project, I am glad that I decided to build my own. I learned so much from the design, prototype, and iteration process that a development board would never have exposed me to.

Prior to this project I had expereience at Iowa State programming Terasic DE2-115's in Verilog for my intro to digital logic class. As for the hardware and circuit side of things, I had just taken EE201 (Circuits I), so I did not have much to go off of (well, this project was moreso digital logic circuitry, so I suppose not much analog knowledge would've been helpful anyways).

This development board consists of a Lattice MachXO2 7000HC, four user-selectable voltage levels for the GPIO banks, and 1 player PONG (I wasn't able to make another controller, I pieced that together from a broken Perkin-Elmer Gauge Controller that I had bought from Iowa State's surplus :P). While all my features work, there's a lot with the board that I am not very pleased with when revisiting this project. A lack of a power switch, the awkward way my JTAG programmer plugs in (I designed the JTAG programm you see in the picture as well), and the terrible VGA video quality (putting it right next to the power area of the board with zero mindfulness for signal integrity was not a great idea). But I make mistakes and learn from them, so long as I don't make them again.

Since I've finished this project, I've applied what I learned here and have worked on much more ambitious projects such as my Lattice ECP5 HDMI board that I will add soon to my website (BGA soldering is not something I've done before, so it may take a while!).



Back To Projects